---
title: "Trigger offer by line item"
method: POST
path: "/v1/shoppers/me/carts/active/line-items (API Trigger Offer)"
tags: ["API Trigger Offer"]
---

# Trigger offer by line item

`POST /v1/shoppers/me/carts/active/line-items (API Trigger Offer)`

Use API to trigger the Product Level offer(s). <br> <br> <b>Note</b>&colon; The offer type must be “Promotional URL / External Triggered Offer”.

## Query parameters

- `skipOfferArbitration` string

## Request body

- LineItemAPITriggerOfferRequest
  - `lineItems` object
    - `lineItem` object[]
      - `id` string — Provide ID for update operation.
      - `quantity` integer
      - `product` object
        - `id` string
    - `appliedProductOffers` object
      - `offer` object
        - `offerId` string, required — The offer's identifier.
        - `externalReferenceId` string — Provide the external reference identifier for your product. The externalReferenceId is your company's internal identifier or stock keeping unit (SKU) for a product used when creating a line item with companyId. Either offerId or externalReferenceId is required. Use externalReferenceId only if your site enforces the uniqueness of offer ERID.
        - `customDescription` string
      - `shippingOffer` object
        - `offerId` string, required — The shipping offer's identifier.
        - `externalReferenceId` string — Provide the external reference identifier for your product. The externalReferenceId is your company's internal identifier or stock keeping unit (SKU) for a product used when creating a line item with companyId. Either offerId or externalReferenceId is required. Use externalReferenceId only if your site enforces the uniqueness of offer ERID.
        - `customDescription` string

## Response `200`

Successful response.

- union
  - DefaultLineItems
    - `lineItems` object
      - `uri` string
      - `lineItems` DefaultLineItem[]
        - `uri` string
        - `id` string
        - `quantity` string
        - `product` DefaultProduct
          - `uri` string
          - `parentProduct` object
            - `uri` string
          - `id` string
          - `name` string
          - `displayName` string
          - `shortDescription` string — A short description of the product.
          - `longDescription` string — A long description of the product.
          - `productType` string — A product type defines how shoppers will receive the product.
          - `sku` string
          - `externalReferenceId` string
          - `companyId` string
          - `displayableProduct` string
          - `purchasable` string
          - `manufacturerName` string
          - `manufacturerPartNumber` string
          - `thumbnailImage` string
          - `productImage` string
          - `keywords` string — The words shopper can enter in a search engine to search the product.
          - `customAttributes` DefaultCustomAttributes
            - `attribute` object[]
              - …
        - `pricing` DefaultLineItemPrice
          - `listPrice` object — The per-unit price setup in the price list for the product associated with this line item. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
            - `currency` string
            - `value` number
          - `listPriceWithQuantity` object — The total calculated list price for the line item with quantity. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax. - The value for this field uses the following formula: listPrice × qty
            - `currency` string
            - `value` number
          - `salePriceWithQuantity` object — The total calculated price for the line item with quantity. - It includes: * The line item level discount * The "Included in Price" fee (an invisible fee) if it's configured for the line item * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The order level discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
            - `currency` string
            - `value` number
          - `formattedListPrice` string — The formatted listPrice. It can include displayable items such as a dollar symbol for display, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
          - `formattedListPriceWithQuantity` string — The formatted listPriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
          - `formattedSalePriceWithQuantity` string — The formatted salePriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
          - `formattedCommitmentPrice` string — This is only available for annual paid monthly product
          - `commitmentPrice` object — This is only available for annual paid monthly product
            - `currency` string
            - `value` string
          - `productTax` object — The tax amount for the product at the line-item level with quantity. When you set up a Fee for the product and choose "Included in Price" (an invisible fee), the response includes the fee in the price and excludes the invisible fee tax in the productTax. When you set up the Fee and choose "Excluded from Price” (a visible fee), the response excludes the visible fee tax from productTax.
            - `currency` string
            - `value` string
          - `shippingTax` object — The shipping tax amount of the line item with quantity. If you ship more than one line item together, the items might share the shipping tax amount in the response for the order.
            - `currency` string
            - `value` string
          - `feeTax` object — The fee tax amount of the line item with quantity. If there is more than one fee for this product, this amount is the sum of all fee taxes regardless of whether they are Fee "Included in Price" (an invisible fee) or Fee "Excluded from price" (a visible fee).
            - `currency` string
            - `value` string
          - `taxRate` string — Rate available for calculating the tax for this lineitem.
          - `importTax` object — The transaction assesses value-added tax (VAT) or other sales tax. It encompasses taxes imposed during the import process and may include taxes related to import shipping. Refer to 'lineItems.lineItem.customAttributes.attribute.landedCostShippingTax' for a detailed tax component breakdown on shipping.
            - `currency` string
            - `value` number
          - `formattedImportTax` string — Formatted importTax that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
          - `importDuty` object — When a customer purchases products online, one or more of the products may not originate in the country the customer resides in, and therefore are subject to a customs duty when importing transported across international borders. When goods are not shipped domestically (within the customer’s country) or within a single customs union, such as the European Union, the customer is liable to pay any inbound duties which the customer’s local customs authority deems appropriate.
            - `currency` string
            - `value` number
          - `formattedImportDuty` string — Formatted importDuty that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
        - `components` ComponentsBlock — Component information of a Product Combination
          - `lineItem` object[]
            - `id` string
            - `quantity` string
            - `product` object — Product information of the components
              - …
            - `pricing` ExpandedLineItemPrice
              - …
        - `groups` GroupDefaultArray[]
          - `group` GroupDefaultObject[]
            - `id` string
            - `relationType` string
            - `offer` object
              - …
  - ExpandedLineItems
    - `uri` string
    - `lineItems` ExpandedLineItem[]
      - `uri` string
      - `id` string
      - `quantity` integer
      - `product` ExpandedProduct
        - `uri` string
        - `parentProduct` object
          - `uri` string
          - `id` string
          - `name` string
          - `displayName` string
          - `shortDescription` string — A short description of the product.
          - `longDescription` string — A long description of the product.
          - `productType` string
          - `sku` string
          - `companyId` string
          - `displayableProduct` string
          - `purchasable` string
          - `manufacturerPartNumber` string
          - `thumbnailImage` string
          - `productImage` string
          - `baseProduct` string — Whether this product is a base product.
          - `variationAttributes` object
            - `attribute` object
              - …
        - `id` string
        - `name` string
        - `displayName` string
        - `shortDescription` string — A short description of the product.
        - `longDescription` string — A long description of the product.
        - `productType` string
        - `sku` string
        - `companyId` string
        - `displayableProduct` string
        - `purchasable` string
        - `thumbnailImage` string
        - `productImage` string
        - `baseProduct` string — Whether this product is a base product.
        - `customAttributes` DefaultCustomAttributes
          - `attribute` object[]
            - `name` string
            - `value` string
            - `type` string
        - `inventoryStatus` ProductInventoryStatus
          - `uri` string
          - `availableQuantity` integer
          - `availableQuantityIsEstimated` string
          - `productIsInStock` string
          - `productIsAllowsBackorders` string
          - `productIsTracked` string
          - `requestedQuantityAvailable` string
          - `status` string
          - `statusIsEstimated` string
          - `expectedInStockDate` string
          - `customStockMessage` string
      - `pricing` ExpandedLineItemPrice
        - `listPrice` object — The per-unit price setup in the price list for the product associated with this line item. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
          - `currency` string
          - `value` number
        - `listPriceWithQuantity` object — The total calculated list price for the line item with quantity. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax. - The value for this field uses the following formula: listPrice × qty
          - `currency` string
          - `value` number
        - `salePrice` object — The per-unit price for the product associated with this line item. - It includes: * The line item level discount per unit * The "Included in Price" fee (an invisible fee) if it's configured for the line item * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The order level discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax. - The value for this field uses the following formula: salePriceWithQuantity ÷ qty
          - `currency` string
          - `value` number
        - `salePriceWithQuantity` object — The total calculated price for the line item with quantity. - It includes: * The line item level discount * The "Included in Price" fee (an invisible fee) if it's configured for the line item * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The order level discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
          - `currency` string
          - `value` number
        - `formattedListPrice` string — The formatted listPrice. It can include displayable items such as a dollar symbol for display, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
        - `formattedListPriceWithQuantity` string — The formatted listPriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
        - `formattedSalePrice` string — The formatted salePrice. It can include displayable items such as a dollar symbol for display, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
        - `formattedSalePriceWithQuantity` string — The formatted salePriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
        - `totalDiscountWithQuantity` object — The total discount of the line item with quantity. It does not include the order level discount.
          - `currency` string
          - `value` number
        - `formattedTotalDiscountWithQuantity` string — The formatted totalDiscountWithQuantity. It can include displayable items such as a dollar symbol, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
        - `formattedCommitmentPrice` string — This is only available for annual paid monthly product
        - `commitmentPrice` object — This is only available for annual paid monthly product
          - `currency` string
          - `value` string
        - `productTax` object — The tax amount for the product at the line-item level with quantity. When you set up a Fee for the product and choose "Included in Price" (an invisible fee), the response includes the fee in the price and excludes the invisible fee tax in the productTax. When you set up the Fee and choose "Excluded from Price” (a visible fee), the response excludes the visible fee tax from productTax.
          - `currency` string
          - `value` string
        - `shippingTax` object — The shipping tax amount of the line item with quantity. If you ship more than one line item together, the items might share the shipping tax amount in the response for the order.
          - `currency` string
          - `value` string
        - `feeTax` object — The fee tax amount of the line item with quantity. If there is more than one fee for this product, this amount is the sum of all fee taxes regardless of whether they are Fee "Included in Price" (an invisible fee) or Fee "Excluded from price" (a visible fee).
          - `currency` string
          - `value` string
        - `taxRate` string — Rate available for calculating the tax for this lineitem.
        - `discountDescription` string
        - `importTax` object — The transaction assesses value-added tax (VAT) or other sales tax. It encompasses taxes imposed during the import process and may include taxes related to import shipping. Refer to 'lineItems.lineItem.customAttributes.attribute.landedCostShippingTax' for a detailed tax component breakdown on shipping.
          - `currency` string
          - `value` number
        - `formattedImportTax` string — Formatted importTax that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
        - `importDuty` object — When a customer purchases products online, one or more of the products may not originate in the country the customer resides in, and therefore are subject to a customs duty when importing transported across international borders. When goods are not shipped domestically (within the customer’s country) or within a single customs union, such as the European Union, the customer is liable to pay any inbound duties which the customer’s local customs authority deems appropriate.
          - `currency` string
          - `value` number
        - `formattedImportDuty` string — Formatted importDuty that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
        - `feePricing` object — The tax info of Fee "Excluded from price" (a visible fee).
          - `fee` LineItemFeePricing[]
            - `name` string
            - `typeCode` string
            - `listPrice` DefaultCurrency
              - …
            - `listPriceWithQuantity` DefaultCurrency
              - …
            - `salePriceWithQuantity` DefaultCurrency
              - …
            - `formattedListPrice` string
            - `formattedListPriceWithQuantity` string
            - `formattedSalePriceWithQuantity` string
            - `tax` object — The tax amount of Fee "Excluded from price" (a visible fee) of the line item with quantity.
              - …
      - `components` ComponentsBlock — Component information of a Product Combination
        - `lineItem` object[]
          - `id` string
          - `quantity` string
          - `product` object — Product information of the components
            - `uri` string
            - `displayName` string
            - `thumbnailImage` string
          - `pricing` ExpandedLineItemPrice
            - `listPrice` object — The per-unit price setup in the price list for the product associated with this line item. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
              - …
            - `listPriceWithQuantity` object — The total calculated list price for the line item with quantity. - It includes: * The "Included in Price" fee (an invisible fee) if it's configured for the line item. * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax. - The value for this field uses the following formula: listPrice × qty
              - …
            - `salePrice` object — The per-unit price for the product associated with this line item. - It includes: * The line item level discount per unit * The "Included in Price" fee (an invisible fee) if it's configured for the line item * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The order level discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax. - The value for this field uses the following formula: salePriceWithQuantity ÷ qty
              - …
            - `salePriceWithQuantity` object — The total calculated price for the line item with quantity. - It includes: * The line item level discount * The "Included in Price" fee (an invisible fee) if it's configured for the line item * If the price list is set to tax inclusive, this price will include tax. - It does not include: * The order level discount * The "Excluded from price" fee (a visible fee) * If price list is set to tax exclusive, this price will NOT include tax.
              - …
            - `formattedListPrice` string — The formatted listPrice. It can include displayable items such as a dollar symbol for display, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
            - `formattedListPriceWithQuantity` string — The formatted listPriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
            - `formattedSalePrice` string — The formatted salePrice. It can include displayable items such as a dollar symbol for display, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
            - `formattedSalePriceWithQuantity` string — The formatted salePriceWithQuantity. It can include displayable items such as a dollar symbol, a symbol for decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
            - `totalDiscountWithQuantity` object — The total discount of the line item with quantity. It does not include the order level discount.
              - …
            - `formattedTotalDiscountWithQuantity` string — The formatted totalDiscountWithQuantity. It can include displayable items such as a dollar symbol, a symbol for a decimal separator, the number of fractional digits. To set up the formatted price, contact your Digital River team.
            - `formattedCommitmentPrice` string — This is only available for annual paid monthly product
            - `commitmentPrice` object — This is only available for annual paid monthly product
              - …
            - `productTax` object — The tax amount for the product at the line-item level with quantity. When you set up a Fee for the product and choose "Included in Price" (an invisible fee), the response includes the fee in the price and excludes the invisible fee tax in the productTax. When you set up the Fee and choose "Excluded from Price” (a visible fee), the response excludes the visible fee tax from productTax.
              - …
            - `shippingTax` object — The shipping tax amount of the line item with quantity. If you ship more than one line item together, the items might share the shipping tax amount in the response for the order.
              - …
            - `feeTax` object — The fee tax amount of the line item with quantity. If there is more than one fee for this product, this amount is the sum of all fee taxes regardless of whether they are Fee "Included in Price" (an invisible fee) or Fee "Excluded from price" (a visible fee).
              - …
            - `taxRate` string — Rate available for calculating the tax for this lineitem.
            - `discountDescription` string
            - `importTax` object — The transaction assesses value-added tax (VAT) or other sales tax. It encompasses taxes imposed during the import process and may include taxes related to import shipping. Refer to 'lineItems.lineItem.customAttributes.attribute.landedCostShippingTax' for a detailed tax component breakdown on shipping.
              - …
            - `formattedImportTax` string — Formatted importTax that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
            - `importDuty` object — When a customer purchases products online, one or more of the products may not originate in the country the customer resides in, and therefore are subject to a customs duty when importing transported across international borders. When goods are not shipped domestically (within the customer’s country) or within a single customs union, such as the European Union, the customer is liable to pay any inbound duties which the customer’s local customs authority deems appropriate.
              - …
            - `formattedImportDuty` string — Formatted importDuty that displays symbols such as the dollar sign, a decimal separator, and the number of fractional digits. Contact your Digital River team to set up the formatted tax.
            - `feePricing` object — The tax info of Fee "Excluded from price" (a visible fee).
              - …
      - `groups` GroupExpandArray[]
        - `group` GroupExpandObject[]
          - `id` string
          - `relationType` string
          - `offer` GroupOfferExpandObject
            - `uri` string
            - `id` integer
            - `name` string
            - `policyName` string — The bundle policy for bundle offers outlines the relationship between parent and child products within the bundle. For example:Semi-Tight, Loose, Tight.
            - `type` string
            - `image` string
            - `trigger` string
            - `salesPitch` string[] — Text or content appeared above the product image and information in the offer content.
            - `customAttributes` DefaultCustomAttributes
              - …
        - `customAttributes` DefaultCustomAttributes
          - `attribute` object[]
            - `name` string
            - `value` string
            - `type` string

## Other responses

- `400` — * invalid-request
- `401` — * invalid_token
- `404` — * resource-not-found * no-offer-identifier * no-product-identifier * duplicate_product_identifier * duplicate_offer_identifier
- `409` — * invalid-offer-id * precondition-failure
- `412` — * no-discount-or-type * invalid-product-id * invalid-discount * invalid_discount_type
- `413` — * custom_description_exceeds_limitation

---

[API](https://skmtc.net/digitalriver/apis/commerce-api-suite-shopper-apis.md) · [All operations](https://skmtc.net/digitalriver/apis/commerce-api-suite-shopper-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitalriver/commerce-api-suite-shopper-apis/revisions/4b69392f93b9/schema)
